/**
 * 好友在线状态
 */
export const FriendStatus = {
  OFFLINE: 0,
  ONLINE: 1,
  HIDDEN: 2,
} as const;

export type FriendStatus = (typeof FriendStatus)[keyof typeof FriendStatus];

/**
 * 好友信息类型定义
 */
export interface Friend {
  /**
   * 好友 ID
   */
  id: string;
  /**
   * 好友 UUID
   */
  uuid: string;
  /**
   * 备注名
   */
  remark: string;
  /**
   * 好友昵称（从用户表关联出来的）
   */
  nickname: string;

  /**
   * 好友头像 URL（从用户表关联出来的）
   */
  avatar: string;

  /**
   * 好友在线状态
   */
  friendStatus: FriendStatus;
  /**
   * 上次在线时间
   */
  lastOnlineTime: string;
  /**
   * 添加时间
   */
  createTime: string; // ISO 日期字符串
}





export interface FriendUpdateType {
  /**
   * 好友 ID
   */
  friendId: string;
  /**
   * 新的备注名
   */
  remark?: string;
  /**
   * 好友在线状态
   */
  friendStatus?: FriendStatus;
  /**
   * 上次在线时间
   */
  lastOnlineTime?: string;
}

/**
 * 好友备注修改请求
 */
export interface UpdateFriendRemarkRequest {
  /**
   * 好友 ID
   */
  friendId: string;
  /**
   * 新的备注名
   */
  remark: string;
}
